perm filename PAPERA.9[DOC,TOB] blob sn#027213 filedate 1973-02-26 generic text, type T, neo UTF8
00100			     COMPUTER VISION
00200				   by
00300	             Thomas O. Binford, Stanford University    and
00400	             Jay M. Tenenbaum,  Stanford Research Institute
00500	
00600	
00700				Introduction.
00800	
00805	Intelligent computers require knowledge of their environment, and the
00905	most effective means of acquiring such knowledge is by seeing. Vision
01005	will open a new realm of computer applications. Weather analysis from
01105	cloud  maps  and  medical diagnosis from x-rays and blood cell counts
01205	are two of many  high  volume  data  processing  tasks  that  require
01305	pictorial  input.  Man-machine communication will be facilitated if a
01405	person can directly show the computer  a  real  object,  rather  than
01505	having  to  describe  it  symbolically. Designers, for example, could
01605	then easily  obtain  a  computerized  structural  analysis  of  scale
01705	models.
01805	
01905	A  particularly exciting area of application is industrial automation.
02005	Today in industry there are hundreds of  machines  called  industrial
02105	robots.  These  programmable  manipulators can repetitively execute a
02205	precise sequence of motions but have no sensors and are  thus  unable
02305	to   react   dynamically  to  contingencies.  Simple  sensors  and  a
02405	minicomputer  could,  at   slight   additional   cost,   turn   these
02505	manipulators  into  true robots. Primitive visual skills would enable
02605	these machines to align mating parts in assembly operations, increase
02705	reliability  by  self-calibration,  detect flaws and avoid disasters.
02805	Vision will also minimize the present need for precise positioning of
02905	parts  at  each work station; parts could instead be transported in a
03005	bin and picked out as needed.
03105	
03205	The study of perception also provides valuable  insights  into  human
03305	and  machine information processing. Many of the problems encountered
03405	are widespread in intelligence: How is  knowledge  represented?   How
03505	does  it  guide in drawing conclusions from perceptual data? How does
03605	existing knowledge interact with conclusions drawn from an  image  to
03705	acheive  learning?  Issues that arise in the implementation of vision
03805	systems have broad  relevance  to  computer  science:  How  shoulc  a
03905	complex  task  be  partitioned  into  modules? How should the modules
04005	communicate to share their knowledge and  special  capabilities?  How
04105	should  systems  with  highly interdependent modules be structured to
04205	facilitate modification?
04305	
04405	Techniques developed for machine perception cannot be taken literally
04505	as  models  for biological systems because of differences in hardware
04605	and gaps in our  knowledge.   However,  fundamental  limitations  are
04705	shared, suggesting that some of the principles might also be found in
04805	nature. The research may, in turn, occasionally borrow from  biology,
04905	but we cannot copy nature, since again, the details are not yet known
05005	and the hardware is different.
05105	
05205	
05305	Historically,   computer   vision  emerged  from  the  study  of  two
05405	dimensional pattern recognition. However, it is  seldom  possible  to
05505	apply the mathematical formalisms developed for classification to the
05605	analysis of real scenes. Consider  the  visual  requirements  for  an
05705	organism  such  as  a robot. It must manipulate or avoid objects, not
05805	just  classify  them.      Manipulation  requires   three-dimensional
05905	interpretations  and  spatial relations of objects.  In problems like
06005	character recognition, it was attractive to  simply  save  images  or
06105	feature  vectors,  then  match  against an image or part of an image.
06205	But in real scenes, objects occlude one another, they have parts with
06305	joints that move separately, there are many viewpoints, many possible
06405	objects, and many combinations of objects. Object classes,  moreover,
06505	are  often  defined  by  function, not shape (eg. the class of coffee
06605	cups).   Direct template  matching  techniques  are  impractical  for
06705	these requirements, except in very carefully controlled applications.
06805	Perception involves complex deductions  to  understand  an  image  in
06905	terms of a priori knowledge of the world.
07005		ELEMENTS OF A VISUAL SYSTEM
07105	
07205	The computer eye is some form of tv camera with color filters  and  a
07305	turret  or  zoom  lens  for  closeup  views.    The computer controls
07405	filters, lens and other parameters to optimize  the  image  for  each
07505	task  [Tenenbaum].   A recent study has suggested alternative sensors
07605	to overcome  the  inadequate  dynamic  range  of  television  systems
07705	[Binford]. Range information greatly simplifies the interpretation of
07805	scenes. Humans use depth  information  obtained  from  stereo  and  a
07905	variety  of  inferred  cues  such  as motion parallax and the size of
08005	known objects. Since these techniques require subtantial  processing,
08105	it  is  easier  for  machines  to obtain depth by direct measurement.
08205	Several depth sensors based on triangulation have been  built  [Agin,
08305	Shirai, Munson].
08405	
08505	An   image  is  read  into  memory  as  an array of brightness values
08605	(typically 300x300) with 4-8 bits for each sample for each color. The
08705	process  of  interpreting  this  mass  of  numbers  into  a  symbolic
08805	description can  be  thought  of  as  subdivided  into  segmentation,
08905	representation, and interpretation.
09005	
09105	The  process  of  segmentation  partitions  a  scene  into meaningful
09205	entities which may  be  recognizable.     Segmentation  in  character
09305	recognition   is   simple  since  printed  characters  are  spatially
09405	separated and have high contrast with white paper. It  is  harder  to
09505	segment  objects  in  a real scene (even simple scenes) since objects
09605	may overlap  and  will  not  usually  be  separable  from  the  local
09705	background  by  a single attribute like brightness contrast. Instead,
09805	segmentation must proceed by seeking regions of  uniform  brightness,
09905	color,  or  texture  (itself  a  complex descriptor), or regions with
10005	regular boundaries. Segmentation may also depend  on  inferred  depth
10105	cues (e.g., texture gradients or suspected occlusion).
10205	
10305	In  what  form  can  we represent objects internally in the computer?
10405	The simplest form is a pictorial template,  an  array  of  brightness
10505	values  to  be  matched  directly  against  fragments  of  scenes  by
10605	correlation. Given the inadequacies of this representation,  we  must
10705	describe  partitioned  regions  symbolically  in  terms  of extracted
10805	features like color, size, texture, and shape.  All these  properties
10905	are inferred by complex processes from the image.  Simple descriptors
11005	for shape or texture may be used in simple tasks and limited context.
11105	Shape might be described by the ratio of the squared perimeter to the
11205	area of a region.  More sophisticated shape  representations,  needed
11305	for a wider range of tasks, are described later.
11405	
11505	Interpretation  is  often  expressed  as computing a distance measure
11605	between an object and a stored model.  For simple cases that  can  be
11705	useful.    When  objects are occluded, there must be a partial match.
11805	When objects are not identical, judgments  of  similarity  depend  on
11905	representation  of  shape and representation of the task, in order to
12005	define important differences.  The most useful approach is  to  build
12105	up   symbolic   descriptions   and   make  symbolic  descriptions  of
12205	differences.   Sometimes, there are few enough models  that  matching
12305	with  each  model  is possible. More generally, the observed features
12405	must first be used to retrieve likely  models  from  a  large  visual
12505	memory.
12605	
12705	The integration of segmentation, representation and interpretation to
12805	achieve perception is illustrated by a system built at the University
12905	of  Edinburgh  [Barrow]  which  can recognize a small set of ordinary
13005	objects  such  as  pencils,  eye-glasses  and  teacups.  Objects  are
13105	presented  against a contrasting background. Segmentation is achieved
13205	by partitioning the scene into regions of uniform brightness. Objects
13305	are  represented  by  relational  graphs  detailing  gross attributes
13405	(size, shape) of their  principle  regions  and  spatial  constraints
13505	between   them.   Interpretation   is  accomplished  by  mapping  the
13605	relational graph descriptions of known  objects  onto  the  segmented
13705	regions obtained from the scene and seeking the best match.
13805	
13905	Experience  with  early  bottom-up  systems  of  this type led to the
14005	realization that the three basic processes  of  a  perceptual  system
14105	were  highly  interdependent; one cannot proceed sequentially through
14205	segmentation, representation and interpretation and expect to  obtain
14305	a globally consistent interpretation for all objects in a scene.  One
14405	problem is that no reliable  basis  exists  for  judging  the  global
14505	significance   of  segmentation  boundaries  using  local  similarity
14605	criteria. Segmentation must be guided  by  interpretation  to  choose
14705	among  many alternative partitionings, that which leads to a globally
14805	consistent and reasonable description of the scene.
14855	A nice exposition of these ideas is given by Minskey [1972].
14880	
14905			BLOCKS WORLD
15005	
15105	To  avoid some of these difficulties, research concentrated initially
15205	on scenes of toy blocks.  Roberts' important work  opened  the  field
15305	[].  Objects were represented as built up of three primitive parts, a
15405	block, a wedge, and a hexagonal prism. The program assumed  it  would
15505	first  obtain  perfect  line drawings. Interpretation meant choosing a stored
15605	three-dimensional model which after translation, rotation and scaling
15705	could  be projected to match part of the image.  The recognized piece
15805	was then cut away and  the  remainder  considered.   Primitives  were
15905	represented  by  their  vertices in three dimensions.    To decide on
16005	likely image points which belonged to  a  single  body,  the  program
16105	attempted  to  identify  unobscured  polygons,  then  match  sets  of
16205	vertices to topologically similar model vertices. Line drawings  were
16305	formed by a sequence of local operations.  Candidate edge points were
16405	considered by thresholding the gradient of intensity.  Isolated  edge
16505	points  were  discarded.   Connected line fragments were concatenated
16605	into lines which were segmented at  corners  by  a  sequential  least
16705	squares line fit.  Merging of colinear lines bridged some gaps.
16805	
16905	That  system  organization has proven inadequate. It is not enough to
17005	use models and template matching. Producing perfect line drawings  is
17105	not  practical:   some  lines  are  missed;  shadows, reflections and
17205	surface markings cause extra lines; errors  made  at  one  stage  are
17305	compounded  by later stages.  These deficiencies motivated subsequent
17405	research.
17505	
17605	Guzman [] found it possible to segment complex  scenes  into  objects
17705	without template matching, by observing that some vertices give local
17805	evidence that adjacent regions belong to the same body. In figure  1,
17905	vertices  A,B,C,E,G  and H give evidence that adjacent regions belong
18005	to the same body, while vertex F does not.  Vertex D which  resembles
18105	G gives misleading evidence.  To avoid such coincidences, the program
18205	required confirmation.      Regions linked  twice  were  joined  into
18305	clusters;  regions  linked  twice  to  a  cluster  were  also joined.
18405	Regions linked only to a single cluster  were  also  joined  to  that
18505	cluster.  Eventually,  the  program  evolved  to  include inhibitions
18605	against certain links by requiring similar conditions at both ends of
18705	a line.   Other links were introduced without much motivation.
18805	
18905	This  program  was an important advance.    Bodies could be segmented
19005	without recognition and without explicit  models.   The  program  did
19105	surprisingly   well,   but   had   problems   with  holes  and  other
19205	non-convexities,  and  with  accidental  alignment.  being  told  the
19305	background.  Guzman  also  could  not  cope  well with imperfect line
19405	drawings. His program would fail figure 2 because a  missing  line
19505	makes region R3 common to both the block and wedge. Falk [ ] was able
19605	to avoid some of the errors associated  with  missing  boundaries  by
19705	using  a  Guzman like approach to link line segments likely to belong
19805	to the same object instead of regions.
19905	
20005	The limited generality of both these programs was  due  to  the  fact
20105	that  they  were  implemented as a collection of adhoc heuristics for
20205	segmentation with no explicit understanding of line  drawings.  Thus,
20305	while Falk himself realized that regions like R3 were non-planer and could not arise in a
20405	scene containing only trihedral solids, his program could not  reason
20505	at  this level. Huffman [] and Clowes [] made theoretical analyses of
20605	objects with only trihedral vertices (three planes at  each  vertex).
20705	By  classifying  edges at each vertex  as  convex, concave and obscuring, they could
20805	reject some drawings  as
20905	impossible  if a given line was not consistently labeled at each end. Waltz [] expanded that
21005	labelling of lines to include cracks  and  whether  adjacent  regions
21105	were  shadowed  or illuminated. Since each vertex could have many interpretations.
21205	it would seem that a search for consistent labelings
21305	would   be  unmanageable.     Instead,  the  increased  precision  of
21405	descriptions allows rapid discarding of wrong interpretations.    Not
21505	only  are solutions possible, they are quickly obtained. Instead of a
21605	complete tree  search,  it  was  adequate  to  consider  vertices  in
21705	sequence, eliminating inconsistent interpretations as each new vertex
21805	was added.  This produced all possible interpretations  of  a  scene.
21905	However,   some   evaluations  were  possible  to  choose  reasonable
22005	interpretations, in cases with ambiguous interpretations. A  detailed
22105	survey  of  the work through Huffman appears in a recent text by Duda
22205	and Hart [1973].
22305	
22405	
22505	
22605	
22705	
22805	The best performance in  extracting  line  drawings  from  television
22905	images of polyhedra is given by the Shirai [] and the Binford-Horn []
23005	line finders.  Shirai's system performs better,  but  requires  large
23105	contrast  between  objects and background (e.g., white on black), and
23205	finds only features and objects for which  cues  are  available  from
23305	context.    The  Binford-Horn  system is able to find most lines in a
23405	scene of white blocks on a white background  in  arbitrary  lighting.
23505	It  misses  a few lines which can usually be inferred from those that
23605	were found, and garbles some vertices.    The two  are  complementary
23705	and should be combined.
23805	
23905	The two programs are based on different principles.  Shirai's program
24005	first found the outer boundaries of an object or cluster of objects.
24055	It then tried to guess additional lines which were parallel, perpendicular
24080	or extensions to lines already found. Search for missing lines concentrated
24092	around vertices in the preliminary drawing where they would be most likely found.
24405	The use of context  involved
24505	not changing thresholds, but using special-purpose operators:  verify
24605	a line at known position and angle; find a line through a vertex. 
24610	Figure 3
24657	illustrates the complexity of scenes handled by Shirai's program.
24705	The Binford-Horn  system  was  intended  to provide the base for a system
24805	such as Shirai's by providing a partial line drawing without  special
24905	assumptions about the scene.  It used a local directional edge operator and an optimal
25005	sequential decision process to group the edge points into continuous curves.
25305	
25405	It is interesting  to  compare  these  systems  with  biological
25505	ones.    The directional  edge  operators  which are  scanned  over the image
25605	[Binford, Hueckel]  are analogous to the  edge  detector  cells
25705	discovered  by Heubel and Wiesel[] in higher animals.    In practice,
25805	large brightness gradients at reflections and on curved surfaces  cause  masses  of
25905	spurious  edge  fragments.   Smooth gradients are eliminated by subtracting the
26005	local average at each point, 
26105	a process  similar to lateral inhibition in the
26205	retina of animals.
26305	
26405	
26505	
26605			REAL WORLD VISION
26705	
26805	
26905	
27005	The  blocks  world  illustrates  many  basic   aspects   of   machine
27105	perception.   However,   since many   critical  problems  encountered  in
27205	perceiving real world scenes do not arise, few of the techniques 
27230	developed extend to this domain. For example:
27242	
27255	1. Important  problems  in
27305	segmentation   were   avoided  by  using  uniformly  painted  blocks.
27405	Moreover, all  boundaries were straight  lines.  The
27505	region-growing  and edge-finding techniques developed in this context
27605	cannot cope with the  textures  and  variations  of  brightness  that
27705	predominate in the real world.
27805	
27905	2. The  precise  topological  descriptions  that  characterized simple
28005	polyhedra are inappropriate  or  unobtainable  for  complex  real  world
28105	objects such as trees.
28605	
28655	3. Interpretation by exhaustively matching all known prototypes against 
28680	each segmented body is not feasible with large numbers of objects and cluttered scenes.
30005	
30105	Description  of  simple  polyhedral scenes was difficult enough; with
30205	these added obstacles, is there hope for success  in  perceiving  the
30305	real  world?   
30330	Perception in the blocks world sought a complete description of everything present.
30355	It may not be possible (or even
30405	meaningful) to obtain exhaustive descriptions of  real  scenes.  However, complete
30505	descriptions  are  seldom  needed; a system is typically concerned
30605	with only a few  objects required to complete a specific task.
30655	
30705	For  blocks, we restricted our programs to black and white images and
30805	distinguished structures of blocks solely on the basis of shape.   In
30905	the  real  world, there is a tremendous redundancy of visual cues. We
31005	can use color, texture, depth, size,
31105	and  surface  orientation, as well as shape, whichever distinguishes a 
31155	particular object most effectively.
31180	
31205	Real world objects are usually  found  in  well  defined  contexts;  e.g.,
31305	telephones   are  expected  on  tables  but  not  in  waste  baskets.
31405	Recognition of a few prominent landmarks,  combined  with  a  priori
31505	knowledge  of the environment can thus severely restrict what objects
31605	may be present in each part of the scene. While these objects may  be
31705	difficult   to  describe,  there  will  usually  be  sufficient  cues
31805	available to discriminate easily amongst the alternatives. 
31855	Often, very gross descriptions of complex attributes like shape will 
31880	suffice to discriminate amongst a limited number of grossly different
31892	alternatives (e.g., a person can be simply distiguished from a dog by the vertical
31895	orientation of its body).
31901	
31905	Real world vision  can  be  viewed  as  a strategy problem: Given a task, first decide
32005	where to look for objects of interest and  then  decide how  to  distinguish
32105	them from other objects that might also be present.
32110	The system must  limit interpretations to 
32118	a  small  subset  of  possible  objects, selected on the basis of a priori
32122	expectations and crude descriptions of the scene. 
32126	Segmentation  can  be based on attributes which are known to be uniform over
32134	these objects.
32150	The key problems of information  overload are overcome 
32158	by tightly coordinating segmentation
32166	and interpretation with world knowledge and task goals. The overload cannot be
32174	solved  by  merely  building  faster  computers  and bigger memories;
32182	hardware improvements will aid adequate techniques but do little  for
32190	exhaustive techniques.
32205	
32305	The  principle  work to date on real world vision has concentrated on
32405	segmentation and representation. 
32430	Segmentation of textured scenes has been studies as a two-dimensional
32442	problem 
32455	for agricultural  and  earth
32505	resource  survey applications.
32605	Bajcsy [] has analyzed outdoor scenes with perspective, where
32705	three-dimensional  texture descriptions are important.      Textures were
32805	described hierarchically in terms of  simpler  texture  elements  and
32905	their  spatial  relationships.   Descriptors for texture elements and
33005	relations were derived from  Fourier  analysis.   Typical  attributes
33105	were  directionality (if any), size, contrast, and spacing of texture
33205	elements.    The Fourier transform was found troublesome,however, and
33305	color  descriptors  were  added  to  improve performance.  Some depth
33405	relations could be observed from texture gradient.   An  attempt  was
33505	made  to obtain consistent interpretations by first confirming region
33605	boundaries  by  independent  properties,   making   three-dimensional
33705	interpretations,  and  matching region descriptors with those of sky,
33805	trees, grass, etc.  in a world model.
33905	
34005	The  quality  of  interpretation  was  limited  by  unreliability  of
34105	region-growing  processes. Further work in outdoor scenes attempts to
34205	incorporate the  world  model  and  interpretation  into  the  region
34305	growing process. Regions are merged not only because of similarity of
34405	properties, but because the consistency of semantic interpretation is
34505	improved.
34605	
34705	
34805	Typical  robot  tasks  such  as  manipulation,  collision  avoidance,
34905	display  and  recognition  were  analyzed  to determine computational
35005	primitives required for descriptions of shape.  Although  some  would
35105	disagree, our criteria for shape representation are [ ]:
35205	
35305	a)  Representations  should  be  symbolic at a high level in order to
35405	interface with knowledge of the problem  domain. 
35455	
35480	 b)  Representations
35505	should  depend  on  segmentation into parts, which may have subparts.
35655	
35680	c)  Primitives
35705	should  be three-dimensional volume descriptions, rather than surface
35805	descriptions to allow a natural choice of parts.
35855	
35880	d)  Descriptions  should  be  generative.   A   modest
35905	collection  of  primitives  should allow description of a vast set of
36005	objects.
36105	
36205	We will outline one representation that fulfils these desiderata  for
36305	a  large  class  of curved objects. Objects are described in terms of
36405	components which are simple to describe,  and  the  relationships  of
36505	these  parts.  A useful shape primitive for many curved objects is an
36605	arbitrary space curve, and  normal  cross-sections  along  this  axis
36705	(figure  5).    Snake-like  objects,  helices,  toroids,  and locally
36805	helical and toroidal shapes are naturally described [Binford 71]. Our
36905	basic definition of a simple piece is that the direction
37005	of its axis be continuous and that the cross-section  function  along
37105	that axis  be continuous.  We look for large changes in
37205	the cross- section, and consider them as likely places for segmenting
37305	the  object.   The  segmentation process must be flexible and able to
37405	generate  alternate  propositions.   A  higher  level  routine   will
37505	ultimately   select   from  the  alternatives.   Figure  6  shows  an
37605	experimentally obtained computer description of a doll [Agin 72].
37705			INDUSTRIAL APPLICATIONS
37805	
37905	Recently,  several  laboratories  have begun to apply techniques from
38005	perception research to practical  industrial  tasks.  
38030	Stanford University has demonstrated simple assembly operations using
38042	vision and touch.
38055	General  Motors
38105	laboratories  has  succeeded in mounting a wheel on an axle. Stanford
38205	Research Institute and Hitachi Ltd. have  each  demonstrated  systems
38305	which can distinguish sheet metal parts on a moving conveyor belt and
38405	determine their orientation to enable manipulation. Template matching
38505	techniques  were used to take advantage of the two dimensional nature
38605	of these tasks. Moreover, the conveyor demonstrations relied  on  the
38705	contrast  between  shiny metalic parts and the black belt to simplify
38805	segmentation. Many industrial processes share similar constraints  or
38905	can be readily redesigned to do so. We thus expect a proliferation of
39005	industrial applications of computer perception in the near future.